iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0
Web 3

Web3.0 來襲系列 第 12

[12] 什麼是智能合約

  • 分享至 

  • xImage
  •  

什麼是智能合約

所謂的智能合約即是「在區塊鏈上運行的程式」

比特幣作為第一代的區塊鏈,提供了在數位世界的持有資產的一種方式。例如我們可以在比特幣區塊鏈上轉帳。以太坊導入了智能合約的功能,允許我們寫程式,並部署到區塊鏈上。以下我們以以太坊來說明。

就如同一般的程式,智能合約包含了「狀態(State)」與「函數(Function)」,「函數」內有著各種不同的邏輯,包含讀取「狀態」與寫入「狀態」。合約被部署到以太坊上時,會以一個「地址」的形式存在。通常,我們會透過發送交易到這個地址來執行智能合約內所寫的函數。跟普通的地址一樣,我們也可以把以太幣轉到這個地址,但是這個地址本身沒有私鑰,沒辦法透過私鑰的簽章將屬於該地址的餘額轉出,若有將餘額轉出的需求,寫智能合約時就應該寫一個轉出的函數。

智能合約有個很常見的應用就是在以太坊網路上發行自己的代幣(例如:ERC-20的同質化代幣與ERC-721的非同質化代幣),以同質化代幣為例,ERC-20 是一個標準的智能合約標準,定義著「身為一個代幣,該有哪些功能」。只要我們寫的智能合約符合該標準,就能說是一個 ERC-20 的代幣。

下一篇,我們將嘗試部署一份智能合約到測試鏈上。請先安裝好 Metamask,選擇 rinkeby 測試鏈,並至 faucet 獲得一些測試鏈上的代幣。


上一篇
[11] 聯盟鏈的應用
下一篇
智能合約2
系列文
Web3.0 來襲27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言